package com.wondertek.poms.dao.pojo;

import java.util.ArrayList;
import java.util.List;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;

import lombok.Data;
@Data
public class ProductContentPojo {
	/**
	 * <b>Fields</b> prdcontid : 节目编号
	 */
	@NotNull(message = "prdcontid不能为空")
	private Long prdcontid;					 		
	/**
	 * <b>Fields</b> prdinfoid : 产品包编号
	 */
	private Long prdinfoid;					 			
	/**
	 * <b>Fields</b> prdinfoname : 产品包名称
	 */
	private String prdinfoname;				 
	/**
	 * <b>Fields</b> contentid : 内容编号
	 */
	@NotBlank(message = "contentid不能为空")
	private String contentid;				
	/**
	 * <b>Fields</b> assetid : 媒资编号
	 */
	@NotBlank(message = "assetid不能为空")
	private String assetid;					 
	/**
	 * <b>Fields</b> contentname : 内容名称
	 */
	@NotBlank(message = "contentname不能为空")
	private String contentname;				
	/**
	 * <b>Fields</b> shortname : 内容简称
	 */
	private String shortname;				 		
	/**
	 * <b>Fields</b> detail : 内容说明
	 */
	private String detail;					
	/**
	 * <b>Fields</b> cduration : 播放时长
	 */
    @Pattern(regexp="(\\d+)?|0$", message="cduration应填写数字")
	private Long cduration;
	/**
	 * <b>Fields</b> bcid : 播控方标识
	 */
	private String bcid;					 
	/**
	 * <b>Fields</b> cpid : 合作伙伴编号
	 */
	@NotBlank(message = "cpid不能为空")
	private String cpid;					 
	/**
	 * <b>Fields</b> ncpid : CP编号
	 */
	@NotBlank(message = "ncpid不能为空")
	private String ncpid;					
	/**
	 * <b>Fields</b> copyrightcpid : 所属CP
	 */
	private String copyrightcpid;			 
	/**
	 * <b>Fields</b> primarykeyword : 主关键字
	 */
	private String primarykeyword;			 
	/**
	 * <b>Fields</b> keywords : 关键字
	 */
	private String keywords;				 
	/**
	 * <b>Fields</b> feetype : 收费类型 枚举值：1-免费；2-收费
	 */
	private String feetype;					 
	/**
	 * <b>Fields</b> createtime : 生成时间
	 */
	
	private String createtime;				 
	/**
	 * <b>Fields</b> status : 状态
	 */
	@NotNull(message = "status不能为空")
	private Long status;					 
	/**
	 * <b>Fields</b> contenttype : 服务类型
	 */
	@NotBlank(message = "contenttype不能为空")
	private String contenttype;				 
	/**
	 * <b>Fields</b> formtype : 剧集类型
	 */
	private String formtype;				
	/**
	 * <b>Fields</b> category : 内容类别
	 */
	private String category;				
	/**
	 * <b>Fields</b> labels : 标签
	 */
	private String labels;					
	/**
	 * <b>Fields</b> creatorid : 操作员编号
	 */
	private String creatorid;				 
	/**
	 * <b>Fields</b> directrecflag : 支持直播回放
	 */
	private String directrecflag;			 
	/**
	 * <b>Fields</b> medialevel : 媒体文件清晰度
	 */
	private String medialevel;				 
	/**
	 * <b>Fields</b> author : 内容作者
	 */
	private String author;					
	/**
	 * <b>Fields</b> serialcount : 剧集的总集数
	 */
	@NotBlank(message = "serialcount不能为空")
	private String serialcount;				
	/**
	 * <b>Fields</b> serialsequence : 单集在剧集中序号
	 */
	private String serialsequence;			 
	/**
	 * <b>Fields</b> serialcontentid : 单集所属剧集的内容ID
	 */
	private String serialcontentid;			 
	/**
	 * <b>Fields</b> lastmodifytime : 最后修改时间
	 */
	private String lastmodifytime;			 
	/**
	 * <b>Fields</b> watermask : 水印
	 */
	private String watermask;				
	/**
	 * <b>Fields</b> assist : 辅助分类信息
	 */
	private String assist;					 
	/**
	 * <b>Fields</b> displaytype : 内容一级分类ID
	 */
	private String displaytype;				
	/**
	 * <b>Fields</b> displayname : 内容一级分类名称
	 */
	@NotBlank(message = "displayname不能为空")
	private String displayname;				 
	/**
	 * <b>Fields</b> udid : 自定义内容标识
	 */
	private String udid;					 
	/**
	 * <b>Fields</b> bcstatus : 播控状态
	 */
	private String bcstatus;				 
	/**
	 * <b>Fields</b> bcperson : 播控人
	 */
	private String bcperson;				
	/**
	 * <b>Fields</b> bctime : 播控时间
	 */
	private String bctime;					 
	/**
	 * <b>Fields</b> bcrefusereason : 播控拒绝原因
	 */
	private String bcrefusereason;			
	/**
	 * <b>Fields</b> pubstatus : oms是否发布 0 未发布，1 发布
	 */
	private String pubstatus;				 
	/**
	 * <b>Fields</b> repealstatus : oms发布状态 10 11 12...
	 */
	private String repealstatus;			 
	
	/**
	 * <b>Fields</b> updateFields : 变更字段信息
	 */
	private String updateFields;			
	/**
	 * <b>Fields</b> bcPriority : 播控优先级
	 */
	private String bcPriority;				
	/**
	 * <b>Fields</b> pubNewStatus : 发布状态新(10, 11, 12, 13, 20 ....)
	 */
	private String pubNewStatus;			
	/**
	 * <b>Fields</b> distStatus : 分发状态
	 */
	private String distStatus;				
	/**
	 * <b>Fields</b> isDelete : 删除状态 0-未删除， 1-变更不符合进包规则删除， 2-手动删除， 4-相同媒资内容替换删除
	 */
	private String isDelete;				
	/**
	 * <b>Fields</b> serialTrailingSequence : 预告片在剧集中的序号
	 */
	private String serialTrailingSequence;  
	
	/**
	 * <b>Fields</b> secondclassify : 二级分类
	 */
	private List<SecondclassifyPojo> secondclassify = new ArrayList<SecondclassifyPojo>(); 	 
	/**
	 * <b>Fields</b> mediafile : 媒体文件
	 */
	private List<MediaFilePojo> mediafile = new ArrayList<MediaFilePojo>();					
	/**
	 * <b>Fields</b> displayfile : 图片预览
	 */
	private List<String> displayfile = new ArrayList<String>();							
	/**
	 * <b>Fields</b> serialcontents : 单集
	 */
	private List<ProductContentPojo> serialcontents = new ArrayList<ProductContentPojo>();	
	
}
